package com.anolesoft.amljmes.billing.service;

import java.util.List;

import com.anolesoft.amljmes.billing.dto.AmBillingCondition;
import com.anolesoft.amljmes.billing.dto.AmBillingInfoDTO;
import com.anolesoft.yr.util.PageData;

public interface AmBillingInfoService {
	//查询开单信息不分页
	List<AmBillingInfoDTO> queryAllByConditon(AmBillingCondition amBilingCondition);
	//查询开单信息
	PageData<List<AmBillingInfoDTO>> queryAmBillingInfo(AmBillingCondition amBilingCondition);
	//通过制造记录条码查询制造记录信息
	AmBillingInfoDTO queryMesOrderTraceInfo(AmBillingCondition amBillingCondition);
	//新增开单信息
	int insertAmBillingInfo(List<AmBillingInfoDTO> amBillingInfoDTOs);
	//通过制造记录条码查询已经开单但未接单的信息
	AmBillingInfoDTO queryReceiveAmBillingInfo(AmBillingCondition amBillingCondition);
	//撤回已开单但是未接单的开单信息
	int deleteAmBillingInfoRecall(List<AmBillingInfoDTO> amBillingInfoDTOs);
	//接单
	int updateAmbillingInfoReceive(List<AmBillingInfoDTO> amBillingInfoDTOs);
	//接单-拒绝
	int updateAmbillingInfoRefuse(List<AmBillingInfoDTO> amBillingInfoDTOs);
	//撤回已开单但是未接单的开单信息
	int deleteAmBillingInfoRecallSingle(String objuid);
	//接单-查询
	AmBillingInfoDTO queryBillingInfoByPacrNo(String pacrNo);

	int revertAmbillingInfo(AmBillingInfoDTO amBillingInfoDTO);
	int revertAmbillingInfoBatch(List<AmBillingInfoDTO> list);
}
